package cn.iocoder.yudao.module.ride.dal.dataobject.extend;

import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;

/**
 * 司机扩展 DO
 *
 * @author 小胡同学
 */
@TableName("driver_extend")
@KeySequence("driver_extend_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ExtendDO extends BaseDO {

    /**
     * 主键
     */
    @TableId
    private Long id;
    /**
     * 关联 id
     */
    private Long driverId;
    /**
     * 手机运营商
     */
    private Integer mobileCarrier;
    /**
     * 公司标识
     */
    private String companyLogo;
    /**
     * 注册地行政区代码
     */
    private String districtCode;
    /**
     * 驾驶员出生日期
     */
    private LocalDateTime birthDate;
    /**
     * 国籍
     */
    private String nationality;
    /**
     * 驾驶员民族
     */
    private String ethnic;
    /**
     * 驾驶证编号
     */
    private String driverLicenseNo;
    /**
     * 婚姻
     *
     * 枚举 {@link TODO marray 对应的类}
     */
    private Integer maritalStatus;
    /**
     * 外语能力
     */
    private String foreignLang;
    /**
     * 使用 APP 版本号
     */
    private String appVersion;
    /**
     * 使用地图类型
     */
    private String mapType;
    /**
     * 驾驶员学历
     *
     * 枚举 {@link TODO student 对应的类}
     */
    private Integer education;
    /**
     * 户口登记机关名称
     */
    private String householdReg;
    /**
     * 户口住址
     */
    private String householdAddr;
    /**
     * 现居住地址
     */
    private String currentAddr;
    /**
     * 驾驶员照片文件编号
     */
    private String driverPhotoNo;
    /**
     * 驾驶证扫描件文件编号
     */
    private String licenseScanNo;
    /**
     * 准驾车型
     */
    private String carType;
    /**
     * 初次领证日期
     */
    private LocalDateTime licenseFirstDate;
    /**
     * 驾驶证有效期限起
     */
    private LocalDateTime licenseValidStart;
    /**
     * 驾驶证有效期限止
     */
    private LocalDateTime licenseValidEnd;
    /**
     * 是否巡游出租车：1-是 0-否
     *
     * 枚举 {@link TODO or 对应的类}
     */
    private Integer isTaxiDriver;
    /**
     * 网约车驾驶员资格证号
     */
    private String taxiCertNo;
    /**
     * 资格证发证机构
     */
    private String taxiCertOrg;
    /**
     * 资格证发证日期
     */
    private LocalDateTime taxiCertDate;
    /**
     * 初次领取资格证日期
     */
    private LocalDateTime taxiCertFirstDate;
    /**
     * 资格证有效起
     */
    private LocalDateTime taxiCertValidStart;
    /**
     * 资格证有效止
     */
    private LocalDateTime taxiCertValidEnd;
    /**
     * 报备日期
     */
    private LocalDateTime reportDate;
    /**
     * 是否专职
     *
     * 枚举 {@link TODO or 对应的类}
     */
    private Integer isFullTime;
    /**
     * 是否在黑名单
     *
     * 枚举 {@link TODO or 对应的类}
     */
    private Integer inBlacklist;
    /**
     * 服务类型
     *
     * 枚举 {@link TODO type 对应的类}
     */
    private Integer serviceType;
    /**
     * 合同签署公司
     */
    private String contractCompany;
    /**
     * 紧急联系人
     */
    private String emergencyContact;
    /**
     * 紧急联系人电话
     */
    private String emergencyPhone;
    /**
     * 紧急联系人通信地址
     */
    private String emergencyAddr;


}